package com.data.modules.online.cgform.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;
import java.util.Date;
import org.springframework.format.annotation.DateTimeFormat;

@TableName("onl_cgform_index")
public class OnlCgformIndex implements Serializable {
    private static final long serialVersionUID = 1;
    private String cgformHeadId;
    private String createBy;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    private Integer delFlag;
    @TableId(type = IdType.ASSIGN_UUID)

    private String id;
    private String indexField;
    private String indexName;
    private String indexType;
    private String isDbSynch;
    private String updateBy;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;


    public boolean canEqual(Object other) {
        return other instanceof OnlCgformIndex;
    }

    @Override
    public boolean equals(Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof OnlCgformIndex)) {
            return false;
        }
        OnlCgformIndex onlCgformIndex = (OnlCgformIndex) o;
        if (!onlCgformIndex.canEqual(this)) {
            return false;
        }
        Integer delFlag2 = getDelFlag();
        Integer delFlag3 = onlCgformIndex.getDelFlag();
        if (delFlag2 != null ? !delFlag2.equals(delFlag3) : delFlag3 != null) {
            return false;
        }
        String id = getId();
        String id2 = onlCgformIndex.getId();
        if (id != null ? !id.equals(id2) : id2 != null) {
            return false;
        }
        String cgformHeadId2 = getCgformHeadId();
        String cgformHeadId3 = onlCgformIndex.getCgformHeadId();
        if (cgformHeadId2 != null ? !cgformHeadId2.equals(cgformHeadId3) : cgformHeadId3 != null) {
            return false;
        }
        String indexName2 = getIndexName();
        String indexName3 = onlCgformIndex.getIndexName();
        if (indexName2 != null ? !indexName2.equals(indexName3) : indexName3 != null) {
            return false;
        }
        String indexField2 = getIndexField();
        String indexField3 = onlCgformIndex.getIndexField();
        if (indexField2 != null ? !indexField2.equals(indexField3) : indexField3 != null) {
            return false;
        }
        String isDbSynch2 = getIsDbSynch();
        String isDbSynch3 = onlCgformIndex.getIsDbSynch();
        if (isDbSynch2 != null ? !isDbSynch2.equals(isDbSynch3) : isDbSynch3 != null) {
            return false;
        }
        String indexType2 = getIndexType();
        String indexType3 = onlCgformIndex.getIndexType();
        if (indexType2 != null ? !indexType2.equals(indexType3) : indexType3 != null) {
            return false;
        }
        String createBy2 = getCreateBy();
        String createBy3 = onlCgformIndex.getCreateBy();
        if (createBy2 != null ? !createBy2.equals(createBy3) : createBy3 != null) {
            return false;
        }
        Date createTime2 = getCreateTime();
        Date createTime3 = onlCgformIndex.getCreateTime();
        if (createTime2 != null ? !createTime2.equals(createTime3) : createTime3 != null) {
            return false;
        }
        String updateBy2 = getUpdateBy();
        String updateBy3 = onlCgformIndex.getUpdateBy();
        if (updateBy2 != null ? !updateBy2.equals(updateBy3) : updateBy3 != null) {
            return false;
        }
        Date updateTime2 = getUpdateTime();
        Date updateTime3 = onlCgformIndex.getUpdateTime();
        if (updateTime2 == null) {
            if (updateTime3 == null) {
                return true;
            }
        } else if (updateTime2.equals(updateTime3)) {
            return true;
        }
        return false;
    }

    @Override
    public int hashCode() {
        int i = 43;
        Integer delFlag2 = getDelFlag();
        int hashCode = delFlag2 == null ? 43 : delFlag2.hashCode();
        String id = getId();
        int i2 = (hashCode + 59) * 59;
        int hashCode2 = id == null ? 43 : id.hashCode();
        String cgformHeadId2 = getCgformHeadId();
        int i3 = (hashCode2 + i2) * 59;
        int hashCode3 = cgformHeadId2 == null ? 43 : cgformHeadId2.hashCode();
        String indexName2 = getIndexName();
        int i4 = (hashCode3 + i3) * 59;
        int hashCode4 = indexName2 == null ? 43 : indexName2.hashCode();
        String indexField2 = getIndexField();
        int i5 = (hashCode4 + i4) * 59;
        int hashCode5 = indexField2 == null ? 43 : indexField2.hashCode();
        String isDbSynch2 = getIsDbSynch();
        int i6 = (hashCode5 + i5) * 59;
        int hashCode6 = isDbSynch2 == null ? 43 : isDbSynch2.hashCode();
        String indexType2 = getIndexType();
        int i7 = (hashCode6 + i6) * 59;
        int hashCode7 = indexType2 == null ? 43 : indexType2.hashCode();
        String createBy2 = getCreateBy();
        int i8 = (hashCode7 + i7) * 59;
        int hashCode8 = createBy2 == null ? 43 : createBy2.hashCode();
        Date createTime2 = getCreateTime();
        int i9 = (hashCode8 + i8) * 59;
        int hashCode9 = createTime2 == null ? 43 : createTime2.hashCode();
        String updateBy2 = getUpdateBy();
        int i10 = (hashCode9 + i9) * 59;
        int hashCode10 = updateBy2 == null ? 43 : updateBy2.hashCode();
        Date updateTime2 = getUpdateTime();
        int i11 = (hashCode10 + i10) * 59;
        if (updateTime2 != null) {
            i = updateTime2.hashCode();
        }
        return i11 + i;
    }

    public void setCgformHeadId(String cgformHeadId2) {
        this.cgformHeadId = cgformHeadId2;
    }

    public void setCreateBy(String createBy2) {
        this.createBy = createBy2;
    }

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    public void setCreateTime(Date createTime2) {
        this.createTime = createTime2;
    }

    public void setDelFlag(Integer delFlag2) {
        this.delFlag = delFlag2;
    }

    public void setId(String id) {
        this.id = id;
    }

    public void setIndexField(String indexField2) {
        this.indexField = indexField2;
    }

    public void setIndexName(String indexName2) {
        this.indexName = indexName2;
    }

    public void setIndexType(String indexType2) {
        this.indexType = indexType2;
    }

    public void setIsDbSynch(String isDbSynch2) {
        this.isDbSynch = isDbSynch2;
    }

    public void setUpdateBy(String updateBy2) {
        this.updateBy = updateBy2;
    }

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    public void setUpdateTime(Date updateTime2) {
        this.updateTime = updateTime2;
    }

    @Override
    public String toString() {
        return "OnlCgformIndex(id=" + getId() + ", cgformHeadId=" + getCgformHeadId() + ", indexName=" + getIndexName() + ", indexField=" + getIndexField() + ", isDbSynch=" + getIsDbSynch() + ", delFlag=" + getDelFlag() + ", indexType=" + getIndexType() + ", createBy=" + getCreateBy() + ", createTime=" + getCreateTime() + ", updateBy=" + getUpdateBy() + ", updateTime=" + getUpdateTime() + ")";
    }

    public String getId() {
        return this.id;
    }

    public String getCgformHeadId() {
        return this.cgformHeadId;
    }

    public String getIndexName() {
        return this.indexName;
    }

    public String getIndexField() {
        return this.indexField;
    }

    public String getIsDbSynch() {
        return this.isDbSynch;
    }

    public Integer getDelFlag() {
        return this.delFlag;
    }

    public String getIndexType() {
        return this.indexType;
    }

    public String getCreateBy() {
        return this.createBy;
    }

    public Date getCreateTime() {
        return this.createTime;
    }

    public String getUpdateBy() {
        return this.updateBy;
    }

    public Date getUpdateTime() {
        return this.updateTime;
    }
}
